package com.molichuxing.services.infrastructure.dto.response.response;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;

@Data
public class ResourceDto implements Serializable {
    /**
     * permission_resource
     */
    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "id")
    private Integer permissionId;

    @ApiModelProperty(value = "系统类型（1：op，2：经销商，3：车联网）")
    private Integer systemType;

    @ApiModelProperty(value = "权限名称")
    private String permissionName;

    @ApiModelProperty(value = "code编码")
    private String code;

    @ApiModelProperty(value = "访问地址")
    private String pathUrl;

    @ApiModelProperty(value = "code介绍")
    private String permissionDescription;

    @ApiModelProperty(value = "权限等级，1为通用接口权限，2为需要校验接口权限")
    private Integer apiLevel;

    @ApiModelProperty(value = "顺序")
    private Integer sort;

    @ApiModelProperty(value = "1为菜单、 2为按钮、3为API、 4为页签、 5为超链、 6为URL")
    private Integer permissionType;

    @ApiModelProperty(value = "图片地址")
    private String icon;

    @ApiModelProperty(value = "上级id")
    private Integer pid;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "是否删除(0:否，1：是)")
    private Boolean isDelete;

    @ApiModelProperty(value = "后台接口地址")
    private String uri;

    @ApiModelProperty(value = "创建时间")
    private LocalDateTime gmtCreate;

    @ApiModelProperty(value = "更新时间")
    private LocalDateTime gmtModified;

    @ApiModelProperty(value = "子菜单")
    private List<ResourceDto> children;
}